/* 
 * cms，一个基于J2EE架构内容管理系统
 * Copyright © GrayRabbit Co., Ltd. All rights reserved.
 * Department:运营department
 * 更多信息请访问：
 * http://code.google.com/p/gray-rabbit-cms/
 */
package org.grayrabbit.cms.service.system;

import java.util.List;

import org.grayrabbit.cms.entity.OperLog;
import org.grayrabbit.cms.vo.system.OperLogBean;

import org.grayrabbit.dao.util.Page;
import org.grayrabbit.service.GenericService;

/**
 * <b>OperLog</b>的service接口

 * @version 1.0,创建时间: 2011-05-16 15:55:12 
 */
public interface OperLogService extends GenericService {
	/**
	 * 根据主键查询实体
	 * @param operLogId
	 * @return
	 */
	OperLog getOperLog(String operLogId);
	/**
	 * 批量删除
	 * @param key
	 */
	void delete(String[] key);
	/**
	 * 删除实体
	 * @param operLog
	 */
	void delete(OperLog operLog);
	/**
	 * 保存实体
	 * @param operLog
	 */
	void save(OperLog operLog);
	/**
	 * 根据bean组装统计查询条件(名称参数)
	 * @param operLog
	 * @return
	 */
	Page<OperLog> getPage(OperLogBean operLogBean);
	/**
	 * 填充分页组件的查询：(名称参数)
	 * @param page
	 * @param operLogBean
	 */
	void list(Page<OperLog> page, OperLogBean operLogBean);
	

	/**
	 * @param admin  当前用户
	 * @param modelType 操作的模块类型
	 * @param act 操作动作
	 * @param ObjectId  操作对象ID
	 *  按照输入的参数预先组装MEMO 
	 */
	void addLog(String logionName, String realName ,String modelType,String act,String ObjectId,String ip);
	  
	/**
	 * @param admin  当前用户
	 * @param modelType 操作的模块类型
	 * @param act 操作动作
	 * @param ObjectId  操作对象ID
	 * @param memo  自定义MEMO
	 */
	void addLog(String logionName, String realName ,String modelType,String act,String objectId,String memo,String ip);
	
	public List<OperLog> getLogInfos( OperLogBean operLogBean);
}